<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>1外间距测试</title>
    <style>
        body{
            /*  去掉外间距*/
            margin: 0;
        }
        .fu{
            background-color: rgba(255,255,0,.3);
            overflow: hidden;
        }
        .fu>div{    /*选中父元素下的所有子级的div */
            width: 100px;
            height: 100px;
            background-color: rgba(0,0,255,.6);
            border: 2px solid #00f;
            color: #ffffff;
        }
        .z1{
            /*  下外间距 如果跟下边模块设置上外间距 ,取最大值 */
            margin-bottom: 30px;
            margin-top: 50px;
        }
        .z2{
            margin-top: 50px;
        }
        .z4{
            margin-bottom: 50px;
        }
        .z3{
            /*
                默认顺序是 上 右 下 左
                如果设置两个属性值 上下 左右
                若果设置三个属性 上 右 下 (左为null 则他跟右边距相等)
            */
            /*margin: 10px 20px 30px 40px;*/
            /*margin: 10px 20px;*/
            /*margin: 10px 20px 30px;*/

            margin: 2px auto;
        }
        span{
            border: 2px solid #f00;
        }
        .s2{
            /* 行内匀速的垂直方向的外间距不生效,不要使用 */
            margin: 30px 20px;
        }
    </style>
</head>
<body>


    <span>span1</span>
    <span class="s2">span2</span>
    <span>span3</span>

    <div class="fu" >
        <div class="z1">子元素1</div>
        <div class="z2">子元素2</div>
        <div class="z3">子元素3</div>
        <div class="z4">子元素4</div>
    </div>
</body>
</html>